链路追踪
Spring Cloud Sleuth
Spring Cloud Sleuth为分布式跟踪提供了Spring Boot自动配置。
将跟踪和跨度ID添加到Slf4J MDC,以便您可以从给定的跟踪或跨度中的日志聚合器中提取所有日志。
如果spring-cloud-sleuth-zipkin可用,则该应用将通过HTTP 生成并报告与Zipkin兼容的跟踪。默认情况下,它将它们发送到本地主机(端口9411)上的Zipkin收集器服务。使用来配置服务的位置spring.zipkin.baseUrl。
- 引入Maven :
1
2
3
4<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency> - 什么都不需要改动,查看日志:
ZipKin
Zipkin 是 Twitter 的一个开源项目,允许开发者收集 Twitter 各个服务上的监控数据,并提供查询接口。
该系统让开发者可通过一个 Web 前端轻松的收集和分析数据,例如用户每次请求服务的处理时间等,可方便的监测系统中存在的瓶颈。
- 从下载地址下载server
- 运行springboot应用:
PS D:\developer\zipkin> java -jar .\zipkin-server-2.21.7-exec.jar
- 访问默认地址:http://localhost:9411/zipkin/
Spring Cloud Sleuth + ZipKin
- 集成Maven包
1
2
3
4
5<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
<version>2.2.4.RELEASE</version>
</dependency> - bootstrap.yml中配置
1
2
3## zipkin
spring.zipkin.enabled=true
spring.zipkin.base-url=http://localhost:9411/ - 其他都不需要动
SkyWalking
TODO:
问题
1 | The bean 'feignHystrixBuilder', |
解决方案:
spring.main.allow-bean-definition-overriding=true